// -----------------------------
// Author: 		Dhaenens Gert 
// Creation: 	8/4/2013 12:42:37 PM				
// -----------------------------

#ifndef _LuaObject_h
#define _LuaObject_h

#include "ObjectLuaCommon.h"

namespace ObjectLua
{

	class Lua;

	/*
	//	Base Class for all Objects
	//	which need to interact with Lua
	*/
	class OBJECTLUA LuaObject
	{
	public:
		/*
		//	Get the Lua connected
		//	to this Lua Object
		*/
		virtual Lua*	getLua() const;

	protected:
		LuaObject(Lua* lpLua);
		virtual ~LuaObject();	

		Lua*		m_lpLua;

	private:	
		LuaObject(const LuaObject& refLuaObject);
		LuaObject& operator=(const LuaObject& refLuaObject);
	};

}

#endif